T-볼륨 마운팅 위에 마운팅하기

개요

Pasted image 20250116165128.png
공식 문서에는 이러한 문구가 있다.[1]
나는 이 말이 잘 와닿지 않았다.
볼륨은 다른 볼륨들과 함께 마운트할 수 없다?

아마 한 경로에 대해서 동시에 마운팅이 불가능하다고 말하고 싶은 것일 수도 있겠다.
이것에 대해서 한번 구체적으로 실험을 진행해볼까 한다.

하위 디렉토리에 마운팅하기

apiVersion: v1
kind: Pod
metadata:
  name: mounting-above
spec:
  containers:
    - name: test
      image: busybox:1.28
      command: ['sh', '-c', 'echo "The app is running!" && tail -f /dev/null']
      volumeMounts:
        - name: first-mount
          mountPath: /test
        - name: second-mount
          mountPath: /test/test2
  volumes:
    - name: first-mount
      persistentVolumeClaim:
        claimName: first-mount
    - name: second-mount
      persistentVolumeClaim:
        claimName: second-mount

예제는 일단 PVC로 진행했다.
Pasted image 20250116171718.png
마운팅은 너무 잘 된다.
Pasted image 20250116171739.png
또한 이 마운팅은 그대로 실제 스토리지에도 전파된다.
Pasted image 20250116172058.png
그러나, 구체적으로 실제 데이터가 들어가는 것은 아니다.
Pasted image 20250116172459.png
음.. 왜 그럴까?
마운팅 전파가 되는 것은 사실 드라이버마다 다를 수 있을 것이라 생각했다.
다만 궁금한 것은 실제 스토리지 공간에서도 이 디렉토리가 표시가 된다는 것이다.
그것도 아무 내용도 담지 않은 채로..

조금 생각해보니 이유를 쉽게 알 수 있었다.
마운팅을 할 때는 존재하는 경로가 있어야 한다.
그래서 컨테이너 스펙에 내가 마운팅 경로를 명시했을 때, /test 디렉토리가 생기듯이 /test/test2 디렉토리가 만들어진 것이다.
물론 그 디렉토리는 그냥 빈 디렉토리에 불과할 뿐이며, 그래서 실제 스토리지 공간에서도 빈 디렉토리로 표시가 됐다.
그 이후로 마운팅 작업이 일어났기 때문에 컨테이너 내에서는 데이터가 의도된 대로 제대로 보이게 된 것이다.
그러니 이건 마운팅 전파도 아니고, 그냥 별 것 아닌 당연한 상황이다.
알고보니 별 건 아니네..

같은 경로에 마운팅하기

Pasted image 20250116174327.png
같은 경로 마운팅은 불가능하다.
이게 문서에서 나온 설명이라고 생각한다.
구체적으로 이렇게 말해주면 얼마나 좋니..

결론

문서를 조금만 더 잘 다듬어 줬으면 좋겠다~

관련 문서

이름 noteType created
StatefulSet knowledge 2024-12-26
PersistentVolume knowledge 2025-01-11
StorageClass knowledge 2025-01-12
AWS EBS CSI Driver knowledge 2025-02-18
kubestr knowledge 2025-02-19
AWS EFS CSI Driver knowledge 2025-02-20
볼륨 스냅샷 knowledge 2025-02-20
3주차 - 스토리지 project 2025-02-16
3W - EFS 드라이버, 인스턴스 스토어 활용 published 2025-02-22
E-NFS 볼륨, 스토리지 클래스 설정 topic/explain 2024-10-17
E-바인딩과 하드 링크의 차이 topic/explain 2025-01-16
E-emptyDir 제한 topic/explain 2025-01-16
E-파드 마운팅 recursiveReadOnly topic/explain 2025-02-27
E-projected 볼륨 - 동적 업데이트, 중복 활용 topic/explain 2025-03-10
T-vagrant 쿠버 버전 업그레이드 topic/temp 2025-01-14
T-볼륨 마운팅 위에 마운팅하기 topic/temp 2025-01-16
T-마운트 전파 Bidirectioal topic/temp 2025-02-28

참고


  1. https://kubernetes.io/docs/concepts/storage/volumes/#using-subpath ↩︎